One-chip compass implemented using magnetoresistive (MR) sensor temperature compensation and magnetic cross-term reduction techniques

ABSTRACT

A measurement technique for normalizing the sensitive-axis output of a magnetoresistive (MR) sensor which greatly reduces both temperature effects and magnetic contributions from the insensitive-axis cross-terms. Specifically, the normalization techniques disclosed may be effectuated by direct measurement with no prior knowledge of the sensor constants being required and may be performed for a single sensor with multiple sensors not being required in order to estimate the cross-axis fields for each of the other sensors. The technique can additionally provide an output proportional to the insensitive-axis field as well as that of the sensitive-axis and, when combined with knowledge of ambient field strengths, can be used to determine fundamental MR sensor constants which then allows for correction of higher-order sensor non-linearities. The techniques disclosed are particularly conducive to low power supply availability applications such as battery operation.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation-in-part of application Ser. No.10/751,806, filed Jan. 5, 2004, which is incorporated herein in itsentirety by reference.

COPYRIGHT NOTICE/PERMISSION

A portion of the disclosure of this patent document contains materialwhich is subject to copyright protection. The copyright owner has noobjection to the facsimile reproduction by anyone of the patent documentof the patent disclosure as it appears in the United States Patent andTrademark Office patent file or records, but otherwise, reserves allcopyright rights. The following notice applies to the software and dataand described below, inclusive of the drawing figures where applicable:Copyright© 2003 Laser Technology, Inc.

BACKGROUND OF THE INVENTION

The present invention relates, in general, to the field ofmagnetoresistive (MR) sensors and the utilization of the same asmagnetometers and magnetic compasses. More particularly, the presentinvention relates to effective, simplified and highly accuratetechniques for MR sensor temperature compensation and magneticcross-term reduction in conjunction with conventional magnetoresistivesensor designs.

There are a number of conventional magnetic sensor designs andtechniques for utilizing them in compassing, navigational systems andother applications currently available. In this regard, representativereferences include: Caruso et al., “A New Perspective on Magnetic FieldSensing” published by Honeywell, Inc. May, 1998 (hereinafter “NewPerspectives”),; a Honeywell Sensor Products Datasheet for theHMC1001/1002 and HMC1021/1022 1- and 2-Axis Magnetic Sensors publishedApril, 2000 (hereinafter “Honeywell Datasheet”); a Honeywell ApplicationNote AN-205 entitled “Magnetic Sensor Cross-Axis Effect” by Pant, BharatB. (hereinafter “AN-205”); and a Philips Semiconductors publicationentitled: “Magnetoresistive Sensors for Magnetic Field Measurement”,published Sep. 6, 2000 (hereinafter “Philips Publication”). Thedisclosures of these references are herein specifically incorporated bythis reference in their entirety.

Specifically, the New Perspectives document provides an overview ofmagnetoresistive and other magnetic sensing technologies while theHoneywell Datasheet provides a detailed description of the particular MRsensors as may be utilized in a representative embodiment of the presentinvention disclosed herein. The AN-205 application note describesconventional techniques for the elimination of magnetic cross-terms inmagnetoresistive sensors while the Philips Publication provides adetailed description of MR sensor functionality including relevantmathematics.

SUMMARY OF THE INVENTION

Disclosed herein is a measurement technique used to normalize thesensitive-axis output of a MR sensor which greatly reduces bothtemperature effects and magnetic contributions from the insensitive-axiscross-terms. Among other significant advantages of the normalizationtechnique disclosed are: a) it may be effectuated by direct measurementwith no prior knowledge of the sensor constants being required; b) thetechnique may be performed for a single sensor and multiple sensors arenot needed in order to estimate the cross-axis fields for each of theother sensors; c) the technique can additionally provide an outputproportional to the insensitive-axis field as well as that of thesensitive-axis; d) when combined with knowledge of ambient fieldstrengths, the technique can be used to determine fundamental MR sensorconstants which then allows for correction of higher-order sensornon-linearities; and e) the technique is conducive to low power supplyavailability applications such as battery operation.

Particularly disclosed herein is a method for normalizing an output ofthe sensitive axis of a magnetic sensor having SET/RESET/OFFSET fieldgenerating elements. The output is substantially determined by a methodcomprising: sampling a number of SET outputs of the sensor to produce afirst sum; sampling a number of RESET outputs of the sensor to produce asecond sum; sampling a number of SET gains of the sensor to produce athird sum; sampling a number of RESET gains of the sensor to produce afourth sum; subtracting the second sum from the first sum to produce afirst result; subtracting the fourth sum from the third sum to produce asecond result; and dividing the first result by the second result.

Further disclosed herein is a method for determining the cross-axisoutput of the insensitive axis of a magnetic sensor havingSET/RESET/OFFSET field generating elements. The cross-axis output is,substantially determined by: sampling a number of SET gains of thesensor to produce a first sum; sampling a number of RESET gains of thesensor to produce a second sum; adding the first sum to the second sumto, produce a first result; subtracting the second sum from the firstsum to produce a second result; and dividing the first result by thesecond result.

Also disclosed herein is a method for normalizing an output of thesensitive axis of a magnetic sensor having SET/RESET and OFFSET fieldgenerating elements. The output is substantially determined by a methodcomprising: furnishing a pulse having a first direction to the SET/RESETfield generating element to establish a SET magnetic state; sampling anoutput of the magnetic sensor to establish a SET magnetic output;providing a pulse having the first direction to the OFFSET fieldgenerating element; sampling the output of the magnetic sensor toestablish a first sample; providing another pulse having a seconddirection opposite to the first direction to the OFFSET field generatingelement; further sampling the output of the magnetic sensor to establisha second sample; and subtracting the second sample from the first sampleto establish a SET gain.

Also further disclosed herein is a circuit comprising: a magnetic sensorhaving first and second terminals thereof; SET/RESET field generatingelements disposed at a first location with respect to the magneticsensor; OFFSET field generating elements disposed at a second locationwith respect to the magnetic sensor so as to generate a field orthogonalto that generated by the SET/RESET field generating elements; anamplifier coupled to the first and second terminals of the magneticsensor and having an output thereof; an A/D converter coupled to theoutput of the amplifier for producing a control signal; a SET/RESETpulse generator coupled to the SET/RESET field generating elements; anOFFSET generator coupled to the OFFSET field generating elements; and acontrol block adapted to receive the control signal from the A/Dconverter and providing control output signals to the SET/RESET pulsegenerator and the OFFSET generator.

According to another aspect of the invention a method is provided foroperating one MR chip as a compass, which typically requires twoorthogonally mounted chips to implement. A single chip magnetic sensorincludes SET/RESET field generating elements, and the method includescollecting measurements to create a sensitive-axis output as would berequired for each of the individual chips in a 2-chip system. A nearlyorthogonal cross-axis output, however, is also additionally synthesizedusing similar measurements as used to create the sensitive-axis, andthen compassing computations proceed using this new cross-axis output inplace of the sensitive-axis output normally provided by the secondorthogonal chip. The cross-axis output is determined by sampling SETgains of the sensor to product a first sum and sampling RESET gains ofthe sensor to produce a second sum. The first and second sums are addedto product a first result, and then, the second sum is subtracted fromthe first sum to produce a second result. The cross-axis output is thendetermined by dividing the first result by the second result. Further,the method may include normalizing the sensitive axis outputs, such aswith the processes described above for a 2-chip device.

According to yet another aspect of the invention a circuit is providedfor use as a 1-chip compass. The circuit includes an MR sensor havingfirst and second terminals and a sensitive and a cross-axis. SET/RESETfield generating elements are disposed at a first location relative tothe MR sensor. OFFSET field generating elements are disposed at a secondlocation in the circuit so as to generate a field substantiallyorthogonal to that generated by the SET/RESET field generating elements.An amplifier is couple to the first and second terminals, and A/Dconverter is coupled to the output of the amplifier. A SET/RESET pulsegenerator is coupled in the circuit to the SET/RESET field generatingelements, and an OFFSET generator is coupled to the OFFSET fieldgenerating elements.

A control block is provided in the circuit that receives the controlsignal from the A/D converter and provides control output signals to theSET/RESET pulse generator and the OFFSET generator. Significantly, thecontrol block is further adapted to perform compassing processes basedon MR sensor outputs for the sensitive axis and outputs determined forthe cross-axis. The cross-axis output may be determined as discussedabove and also, the sensitive axis outputs may be normalized asdiscussed above to compensate for temperature effects in the 1-chipcompass circuit.

BRIEF DESCRIPTION OF THE DRAWINGS

The aforementioned and other features and objects of the presentinvention and the manner of attaining them will become more apparent andthe invention itself will be best understood by reference to thefollowing description of a preferred embodiment taken in conjunctionwith the accompanying drawings, wherein:

FIG. 1 is a simplified representation of an MR bridge utilizingSET/RESET and OFFSET coils (or straps) to effectuate themagnetoresistive sensor temperature compensation and magnetic cross-termreduction techniques of the present invention;

FIG. 2 illustrates one realization of a SET/RESET measurement cycle asutilized to normalize the output of an MR sensor in accordance with thetechnique of the present invention;

FIG. 3 illustrates a SET/RESET measurement cycle in accordance with thepresent invention as may be utilized, for example, in a specificimplementation of a Mapstar™ II compass available from Laser Technology,Inc., assignee of the present invention;

FIG. 4 is an expanded view of the SET portion of the measurement cycleillustrated in the preceding figure;

FIG. 5 illustrates one of the ten gain/pitch/roll acquisition sequencesmade in the SET magnetic state and indicates that the first sample ofthe X, Y or Z channel gain measurement is positive with respect tobaseline while the second is negative;

FIG. 6 illustrates one of the ten gain/pitch/roll acquisition sequencesmade in the RESET magnetic state and indicates that the first sample ofthe X, Y or Z channel gain measurement is instead negative with respectto baseline while the second is positive;

FIG. 7 illustrates the expected cross-term reduction, due toimplementation of the techniques of the present invention, for arepresentative sensor with the plot being semi-logarithmic and with theindependent axis being the normalized sensitive-axis field (H/Ho);

FIG. 8 shows a three-dimensional plot illustrating the percentage offull-scale error, as compared to the normalized true sensitive-axisfield for a SET-RESET magnetic output calibrated to a full-scale fieldof ‘0.25 Ho’ and wherein the plot range also covers this full-scalefield value for both the sensitive and cross-axes;

FIG. 9 shows a three-dimensional plot illustrating the percentage errorfor ‘scaled’ sensitive-axis output created using the techniques of thepresent invention and wherein the plot range and error scaling is as inthe preceding figure;

FIG. 10 show a three-dimensional plot illustrating the percentage offull-scale error, as compared to the normalized true sensitive-axisfield, for the ‘scaled’ and ‘linearized’ sensitive-axis output createdusing the techniques of the present invention and wherein the plot rangeis as in the preceding two figures;

FIGS. 11A and 11B are plots of the X and Y-channel signed cross-axisoutputs with respect to the sensitive-axis outputs of their sisterchannels and wherein the negative slope of FIG. 11A indicates the ‘X’cross-axis points in the ‘−Y’ direction and the positive slope of FIG.11B indicates that the ‘Y’ cross-axis points in the ‘+X’ direction; and

FIGS. 12A and 12B show the effects that sensitive and cross-axis fieldshave on the SET-RESET gain difference wherein FIG. 12A illustrates thatthe normalized SET-RESET gain increases with the applied

cross-axis field and FIG. 12B illustrates that the normalized SET-RESETgain difference decreases with the sensitive-axis field;

FIG. 13A shows the sensitive axes of two orthogonal MR chips plottedtogether, which generates an ellipse typically seen for a 2-chipcompass;

FIGS. 13B and 13C are plots for the individual X and Y chips within the2-chip device showing the sensitive-axis versus synthesized cross-axisoutput for each chip. These figures illustrate that a 1-chip compassprovides an elliptical output similar to that produced by a 2-chipdevice;

FIGS. 14A–14C illustrate calibration plots for 2-chip, X-chip, andY-chip compasses of the present invention plotting degree error versusreference angles.

DESCRIPTION OF A REPRESENTATIVE EMBODIMENT

With reference now to FIG. 1, a schematic representation of a‘barber-pole’ type magnetoresistive (MR) bridge 10 is shown, along withthe coils (or straps) 16A, 16B, 18A and 18B used to generate both theSET/RESET and OFFSET fields in order to effectuate the magnetoresistivesensor 12 temperature compensation and magnetic cross-term reductiontechniques of the present invention.

The sensor 12, in general, comprises a substantially elongate permalloybody portion 14 which includes a number of shorting bars between whichare induced a bias current in the direction indicated by the arrows. Thesensor 12, in conjunction with the opposing SET/RESET coils (or straps)16A and 16B and OFFSET coils (or straps) 18A and 18B defines an easyaxis 20 extending between the coils 16A and 16B and a sensitive axis 22extending between the coils 18A and 18B. The MR bridge 10 may be, in arepresentative embodiment, coupled between a voltage V_(BRIDGE) andcircuit ground as shown.

In accordance with the present invention, the MR bridge 10 furtherincludes a SET/RESET current pulse generator 24 for applying a currentI_(SET) on line 26 to the series coupled SET/RESET coils 16A and 16B aswill be more fully described hereinafter. Similarly, an OFFSET currentgenerator 28 supplies a current I_(OFST) on line 30 to the seriescoupled OFFSET coils 18A and 18B as will also be more fully describedhereinafter. The function of the SET/RESET current pulse generator 24and OFFSET current generator 28 is in accordance with direction receivedfrom a microprocessor control block 32. Positive and negative outputfrom the sensor 12 is supplied to a bridge amplifier 34 which produces avoltage output V_(OUT) for input to an analog-to-digital (A/D) converter36 which is, in turn, coupled to the microprocessor control block 32.

Although illustrated as such for sake of simplicity, in practice, actualcoils are seldom used. Instead conductive straps are integrated directlyonto the MR chip to serve as the field generators and the coils areutilized in this figure to illustrate field directions, via theright-hand rule, generated by specific currents. The circuit shown isonly a representative topology implemented in the form of aconstant-voltage bridge and it should be noted that a constant-currentbridge configuration may also be implemented (or a design utilizing acombination of voltage and current methods) which may also be used toeffectuate the sensor temperature compensation and magnetic cross-termreduction technique of the present invention.

With particular reference to AN-205, an experimentally verifiedrepresentation for a “barber-pole” MR bridge sensor output, valid foreither a constant-voltage or constant-current bridge, is given byequation (1) on page 1:V _(OUT)=(aH)/(Hs+Hca),where ‘Vos’, the (null) offset, has been removed;

‘H’ is the sensitive-axis field;

‘Hca’ is the cross-axis field;

‘a’ is a function of the anisotropic magnetoresistance constant, ‘Δρ/ρ’,and bulk resistivity ‘ρ’; and

‘Hs=Hk+Hd’ is a sensor constant (denominated as ‘Ho’ by the PhilipsPublication), equal to the sum of the anisotropy and demagnetizingfields.

Typically, ‘Δρ/ρ’ and ‘ρ’ are the dominant sources of temperaturevariation, while ‘Ho’ varies weakly with temperature due to the smalltemperature dependency of ‘Hk’. Hence it is mathematically useful togeneralize the AN-205 expression for V_(OUT) into the following form:V _(OUT)=CO+Cl[T]FH[H,Hca,Ho], where‘CO’ is derived from a now restored ‘Vos’; Cl[T] is a function oftemperature dependent on circuit topology combined with ‘(Δρ/ρ) [T]’ and‘ρ[T]’; ‘Ho’ is now considered independent of temperature unlessotherwise noted or inferred; and ‘FH[H,Hca,Ho]’ represents someapproximation for the actual magnetic form-factor of a ‘barber-pole’magnetoresistor, which cannot be written in closed form, but can besolved numerically.

The magnetic form-factor specifically associated with the AN-205application note ‘Vout’ approximation is well suited to illustrating thetechniques of the present invention, as it is simple enough to allowmeaningful symbolic expressions to be derived:FH[H,Hca,Ho]≅(H/(Hca+Ho)) [AN-205 Form-Factor]

Note also the form-factors for the SET and RESET magnetic states aregenerally derived by changing the sign changes of ‘Ho’ (+Ho for SETstate, and −Ho for RESET state):FH[H,Hca,+Ho] for the ‘SET’ magnetic stateFH[H,Hca,−Ho] for the ‘RESET’ magnetic state

As shown, a current pulse ‘I_(SET)’ injected into the SET/RESET coils16A, 16B on line 26 will generate a domain aligning field parallel withthe ‘easy-axis’ 20 vector, placing the MR bridge 10 in the SET magneticstate. Conversely, a current pulse in the opposite direction generates afield anti-parallel to the easy-axis 20, toggling the bridge 10 to theRESET magnetic state. When in the SET state, the MR bridge 10 produces apositive voltage with respect to the zero-field bridge OFFSET voltage,‘V_(OS)’, for fields parallel to the sensitive-axis 22. When toggled tothe RESET state, ‘V_(OUT)’ will go negative with respect to ‘V_(OS)’ byapproximately the same amount.

The OFFSET coils 18A, 18B are used to perturb the ambient sensitive-axis22 field in order to make differential gain measurements about thatfield point. A small current ‘I_(OFST)’ injected into the OFFSET coils18A and 18B on line 30 will augment the sensitive axis 22 field, and acurrent pulse in the opposite direction will retard the sensitive axis22 field.

These differential gain measurements, when mathematically combined withthe ambient field measurements, allow for the creation of a normalizedsensitive-axis 22 output in which both temperature and magneticcontributions from the insensitive-axis (aligned with the ‘easy’-axis20) are greatly reduced.

With reference additionally now to FIG. 2, one realization of aSET/RESET measurement cycle is shown as may be used to normalize theoutput of a MR sensor 10 (FIG. 1) in accordance with the technique ofthe present invention. Key timing events are labeled with lowercaseletters “a” through “h” inclusive and substantially correspond to thesimilarly labeled paragraphs describing the activity described ingreater detail hereinafter. It should be noted that different samplingschemes, including those having: a) different sampling orders and‘I_(OFST)’ values to determine differential gains; and/or b) differentnumbers of gain versus output samples per measurement block are alsofeasible and that the illustration shown is intended to berepresentative only.

It should be also noted that the ‘V_(OUT)’ waveform depicted in FIG. 2is consistent with an ambient field aligned parallel with thesensitive-axis field vector 22 of sensor 10, as shown in the precedingfigure. Particularly illustrated for ‘N’=1, as shown in FIG. 2, is that:

The SET/RESET pulse generator 24 delivers a positive-going current pulseto the SET/RESET strap (or coils 16A, 16B), which places the MR bridge10 in the SET magnetic state.

After delaying for amplifier 34 settling time (which proceeds all A/Dreadings made after a change in magnetic state), the A/D converter 36samples V_(OUT) while the OFFSET strap (or coils 18A, 18B) currentI_(OFST) equals zero. This reading is defined as the SET magneticoutput:Vmag _(—) set≡ CO+Cl[T]FH[H+0,Hca,+Ho]

The OFFSET current generator 28 is turned on, augmenting thesensitive-axis 22 magnetic field by ‘+dH’. After a sufficient delay, thefirst of two A/D samples needed to find the SET gain is taken:Vgp _(—) set≡ CO+Cl[T]FH[H+dh,Hca,+Ho]

The OFFSET strap current I_(OFST) is reversed (current zeroing beforereversal is not required), this time retarding the sensitive axis 22field by ‘dH’. The second A/D sample is then taken:Vgn _(—) set≡ CO+Cl[T]FH[H−dh,Hca,+Ho]

The second sample is subtracted from the first to determine the SETgain:Vgain _(—) set≡Vgp _(—) set−Vgn _(—) set=Cl[T]Gset[H,Hca,Ho,dH], wherefunctionGset[H,Hca,Ho,dH]≡FH[H+dH,Hca,+Ho]−FH[H−dH,Hca,+Ho]is only dependent on magnetic parameters. Note that the subtraction alsocancelled the ‘CO’ term.

The RESET measurement cycle (also illustrated in this figure) is similarto the SET cycle in that:

The SET/RESET strap 16 is now pulsed with a negative going current ISET,toggling the MR bridge 10 to the magnetic RESET condition.

Again with zero OFFSET strap current, the RESET magnetic output issampled by the A/D converter 36:Vmag _(—) rset≡ CO+Cl[T]FH[H+O,Hca,−Ho]

The OFFSET strap 18 is again energized to augment the sensitive axisfield by ‘+dH’, and the first of two A/D samples needed to find theRESET gain is made:Vgp _(—) rset≡CO+Cl[T]FH[H+dH,Hca,−Ho]

h) The OFFSET strap current I_(OFST) is reversed, and the second A/Dsample is taken:Vgn _(—) rset≡CO+Cl[T]FH[H−dH,Hca,−Ho]

The second sample is subtracted from the first to determine the RESETgain:Vgain _(—) rset≡ Vgp _(—) rset−Vgn _(—) rset=Cl[T]Grset[H,Hca,Ho,dH],where functionGrset[H,Hca,Ho,dH]≡FH[H+dH,Hca,−Ho]−FH[H−dH,Hca,−Ho]is again only dependent on magnetic parameters.

After a SET and RESET measurement cycle pair has completed, thenormalized (but unscaled) output for the sensitive axis 22 is defined bythe following formula:

$\begin{matrix}{{{Sensitive}\text{-}{Axis}\mspace{14mu}{Output}} \equiv {Usen} \equiv \frac{Vmag\_ diff}{Vgain\_ diff}} \\{= \frac{{Vmag\_ set} - {Vmag\_ rst}}{{Vgain\_ set} - {Vgain\_ rst}}}\end{matrix}$

The normalized (also unscaled) output for insensitive or cross-axis 20is defined here as well:

$\begin{matrix}{{{Cross}\text{-}{Axis}\mspace{14mu}{Output}} \equiv {Ucrs} \equiv \frac{Vgain\_ sum}{Vgain\_ diff}} \\{= \frac{{Vgain\_ set} + {Vgain\_ rst}}{{Vgain\_ set} - {Vgain\_ rst}}}\end{matrix}$

The denominator of both the sensitive-axis and cross-axis output termsis the difference between the SET and RESET gains:Vgain _(—) diff≡Vgain _(—) set−Vgain _(—) rset=Cl[T]Gdiff[H,Hca,Ho,dH],where functionGdiff[H,Hca,Ho,dH]≡Gset[H,Hca,Ho,dH]−Grset[H,Hca,Ho,dH]is only dependent on magnetic parameters.

The numerator of the cross-axis output term is the sum of the SET andRESET gains:Vgain _(—) sum≡ Vgain _(—) set+Vgain _(—) rset=Cl[T]Gsum[H,Hca,Ho,dH],where functionGsum[H,Hca,Ho,dH]=Gset[H,Hca,Ho,dH]+Grset[H,Hca,Ho,dH]is only dependent on magnetic parameters.

The numerator of the sensitive-axis output term is the differencebetween the SET and RESET magnetic outputs:Vmag _(—) diff≡Vmag _(—) set−Vmag _(—) rset=Cl[T]Mdiff[H,Hca,Ho,dH],where functionMdiff[H,Hca,Ho,dH]≡FH[H,Hca,+Ho]−FH[H,Hca,−Ho]is only dependent on magnetic parameters. Note again the cancellation ofthe ‘CO’ term.

The sensitive-axis output only depends on magnetic parameters ‘Ho’ and‘dH’, as the temperature function, ‘Cl[T]=Cl[(Δρ/ρ)[T], ρ[T]]’, cancelsfrom both numerator and denominator:

$\begin{matrix}{{Usen} = \frac{{{C1}\lbrack T\rbrack}*{{Mdiff}\left\lbrack {H,\;\ldots\mspace{11mu},{dH}} \right\rbrack}}{{{C1}\lbrack T\rbrack}*{{Gdiff}\left\lbrack {H,\;\ldots\mspace{11mu},{dH}} \right\rbrack}}} \\{\mspace{25mu}{= \frac{{Mdiff}\left\lbrack {H,{Hca},{Ho},{dH}} \right\rbrack}{{Gdiff}\left\lbrack {H,{Hca},{Ho},{dH}} \right\rbrack}}}\end{matrix}$

Fixed scale-factors associated with ‘Cl[T]’ also cancel, making ‘Usen’scale independent. Similar cancellations occur for the cross-axisexpression:

$\begin{matrix}{{Ucrs} = \frac{{{C1}\lbrack T\rbrack}*{{Gsum}\left\lbrack {H,\;\ldots\mspace{11mu},{dH}} \right\rbrack}}{{{C1}\lbrack T\rbrack}*{{Gdiff}\left\lbrack {H,\;\ldots\mspace{11mu},{dH}} \right\rbrack}}} \\{\mspace{25mu}{= \frac{{Gsum}\left\lbrack {H,{Hca},{Ho},{dH}} \right\rbrack}{{Gdiff}\left\lbrack {H,{Hca},{Ho},{dH}} \right\rbrack}}}\end{matrix}$

Specifically for the AN-205 application note ‘Vout’ approximation, theequations for the sensitive and cross-axis outputs are now derived:

Again, the magnetic form-factor approximation equals:FH[H,Hca,Ho]≅(H/(Hca+Ho))

The SET magnetic output equals:Vmag _(—) set=CO+Cl[T](H/(Hca+Ho)), which is greater than CO for|Hca|<Ho

The SET gain equals:Gset[H,Hca,Ho,dH]=FH[H+dH,Hca,+Ho]−FH[H−dH,Hca,+Ho]=(H+dH)/(Hca+Ho)−(H−dH)/(Hca+Ho)=(2dH)/(Hca+Ho),andVgain _(—) set=Cl[T]((2dH)/(Hca+Ho)), {an always positive quantity for|Hca|<Ho}

The RESET magnetic output equals:Vmag _(—) rset=CO+Cl[T](−H/(Ho−Hca)), (which is less than CO for|Hca|<Ho)

The RESET gain equals:Grset[H,Hca,Ho,dH]=FH[H+dH,Hca,−Ho]−FH[H−dH,Hca,−Ho]=(H+dH)/(Hca−Ho)−(H−dH)/(Hca−Ho)=(−2dH)/(Ho−Hca),andVgain _(—) rset=Cl[T]*(−2dH)/(Ho−Hca), (an always negative quantity for|Hca|<Ho)

The SET gain−RESET gain difference equals:Gdiff[H,Hca,Ho,dH]=Gset[H,Hca,Ho,dH]−Grset[H,Hca,Ho,dH]=(2dH)/(Hca+Ho)+(2dH)/(Ho−Hca)=(4HodH)/(Ho ² −Hca ²), andVgain _(—) diff=Cl[T]*((4Ho dH)/(Ho ² −Hca ²))

The SET gain+RESET gain sum equals:Gsum[H,Hca,Ho,dH]=Gset[H,Hca,Ho,dH]+Grset[H,Hca,Ho,dH]=(2dH)/(Hca+Ho)−(2dH)/(Ho−Hca)=(−4dHHca)/(Ho ² −Hca ²), andVgain _(—) sum=Cl[T]*((−4dH Hca)/(Ho² −Hca ²))

The SET magnetic output−RESET magnetic output equals:Mdiff[H,Hca,Ho,dH]=FH[H,Hca,+Ho]−FH[H,Hca,−Ho]=((H/(Hca+Ho))−(H/(Hca−Ho))=(2HoH)/(Ho ² −Hca ²), andVmag _(—) diff=Cl[T]*((2Ho H)/(Ho ² −Hca ²))

The sensitive-axis output, ‘Usen’ is seen to be proportional only to‘H’, as the ‘Ho/(Ho²−Hca²)’ term common to both numerator anddenominator cancel:

${Usen} = {\frac{{Mdiff}\left\lbrack {H,\;\ldots\mspace{11mu},{dH}} \right\rbrack}{{Gdiff}\left\lbrack {H,\;\ldots\mspace{11mu},{dH}} \right\rbrack}\mspace{56mu} = {\frac{\left( {2 \cdot {Ho} \cdot H} \right)/\left( {{Ho}^{2} - {Hca}^{2}} \right)}{\left( {4 \cdot {Ho} \cdot {dH}} \right)/\left( {{Ho}^{2} - {Hca}^{2}} \right)} = \frac{H}{\left( {2*{dH}} \right)}}}$

As the constant of proportionality, ‘1/(2 dH)’, contains no ‘Ho’ terms,‘Usen’ is also independent of magnetic parameter temperaturedependencies. Given that OFFSET strap geometry is fixed, the precisionof ‘dH’ is determined directly by ‘Iofst’.

The cross-axis output, ‘Ucrs’ is seen to be proportional only to ‘Hca’,as the ‘Ho/(Ho²−Hca²)’ term common to both numerator and denominatorcancel. Given that constant of proportionality equals ‘−(1/Ho)’, thetemperature dependency of ‘Ucrs’ should be equal to or less than thetemperature variation of the anisotropy field, ‘Hk’:

${Ucrs} = {\frac{{Gsum}\left\lbrack {H,\;\ldots\mspace{11mu},{dH}} \right\rbrack}{{Gdiff}\left\lbrack {H,\;\ldots\mspace{11mu},{dH}} \right\rbrack}\mspace{56mu} = {\frac{\left( {{- 4} \cdot {dH} \cdot {Hca}} \right)/\left( {{Ho}^{2} - {Hca}^{2}} \right)}{\left( {4 \cdot {Ho} \cdot {dH}} \right)/\left( {{Ho}^{2} - {Hca}^{2}} \right)} = \frac{Hca}{\left( {- {Ho}} \right)}}}$

All equations can be generalized to multiple samples by replacingindividual quantities with the appropriate averages. Also, the number ofgain samples per SET/RESET cycle need not equal the number of magneticoutput samples. Let the magnetic output samples per SET/RESET cycle(steps (b) and (f)) be repeated ‘N’ times, the number of gains taken perSET/RESET cycle (steps (c)–(d) and steps (g)–(h)) be repeated ‘M’ times(FIG. 2 is drawn for ‘M’=‘N’). The numbers of samples ‘N’ and ‘M’ takenper SET or RESET cycle, as well as the sampling rate, are implementationspecific and dependent on the microprocessor speed of the microprocessorcontrol block 32 and signal filtering requirements.

The averaged sensitive-axis output equation has a new scaling constantthat manifests when ‘N’≠‘M’:

${Usen} \cong {\left( \frac{N}{M} \right) \cdot \frac{H}{\left( {2 \cdot {dH}} \right)}}\mspace{59mu} \cong \frac{{\sum\limits_{1}^{N}\;\left( {{Set}\mspace{14mu}{Outputs}} \right)} - {\sum\limits_{1}^{N}\left( {{Reset}\mspace{14mu}{Outputs}} \right)}}{{\sum\limits_{1}^{M}\;\left( {{Set}\mspace{14mu}{Gains}} \right)} - {\sum\limits_{1}^{M}\left( {{Reset}\mspace{14mu}{Gains}} \right)}}$

The averaged cross-axis equation has no additional scaling constantbecause the ‘M’ terms common to both numerator and denominator cancel:

${Ucrs} \cong \frac{Hca}{\left( {- {Ho}} \right)} \cong \frac{{\sum\left( {{Set}\mspace{14mu}{Gains}} \right)} + {\sum\limits_{\;}^{\;}\left( {{Reset}\mspace{14mu}{Gains}} \right)}}{{\sum\left( {{Set}\mspace{14mu}{Gains}} \right)} - {\sum\limits_{\;}^{\;}\left( {{Reset}\mspace{14mu}{Gains}} \right)}}$

Scaled sensitive and cross-axis equations are found by multiplying bythe appropriate constants of proportionality:Hsen≅(M/N)(2dH)Usen, andHcrs≅(−Ho)Ucrs

The sensitive/cross-axis output streams are updated as subsequentSET/RESET blocks become available.

With reference additionally now to FIG. 7, the expected cross-termreduction, which result from implementation of the techniques of thepresent invention, is plotted against the normalized sensitive-axisfield, (H/Ho). The plot was generated via numerical simulation usingconstants for a representative sensor (‘Ho’=8 Gauss, maximum fieldrange=2 Gauss, and ‘dH’=0.12 Gauss). Note that for (H/Ho)<0.075 (smallfields), the amount cross-term reduction begins to peak as (H/Ho)approaches zero, which is illustrative of the influence of ‘dH’. Forlarger fields, the amount of cross-term reduction decreases in anapproximately logarithmic manner.

Finally, since ‘dH’ and ‘Ho’ are constants of proportionality, they canbe found directly if the sensitive and cross-axis fields are known. Asimple calibration to determine these constants will be discussed, andonce known, ‘dH’ and ‘Ho’ then can be used to calibrate the reportedfield values to specific units and be available for utilization incorrecting for higher-order non-linearities.

To illustrate a representative linearization, the scaled sensitive-axisoutput, ‘Hsen’, is first constructed using the ‘dH’ determined fromcalibration.

${Hsen} \cong H \cong {\left( {\frac{M}{N} \cdot \left( {2 \cdot {dH}} \right)} \right) \cdot \mspace{59mu}\frac{{\sum\limits_{1}^{N}\;\left( {{Set}\mspace{14mu}{Outputs}} \right)} - {\sum\limits_{1}^{N}\left( {{Reset}\mspace{14mu}{Outputs}} \right)}}{{\sum\limits_{1}^{M}\;\left( {{Set}\mspace{14mu}{Gains}} \right)} - {\sum\limits_{1}^{M}\left( {{Reset}\mspace{14mu}{Gains}} \right)}}}$

Next, as will be shown hereinafter in greater detail, ‘Hsen’ isgenerally processed through a simple function of itself and a calibratedvalue for ‘Ho’ to accomplish a significant linearization of ‘Hsen’:H _(Calibrated) ≅Hsen−(1/Ho ²)·(Hsen ³)

Now with particular reference additionally to FIGS. 8, 9, and 10, eachof these figures shows a three-dimensional plot showing the percentageof full-scale error, as compared to the true sensitive-axis field, for aspecific sensitive-axis output:

${\%\mspace{14mu}{FS}\mspace{14mu}{Error}} = {100 \cdot \frac{\left( {{Outputs}/{Ho}} \right) - \left( {H_{True}/{Ho}} \right)}{\left( {H_{FullScale}/{Ho}} \right)}}$

All field values are normalized to the MR sensor constant, ‘Ho’, toallow for generalized comparisons between sensors. Both the sensitiveand cross-axis ranges, as well as the error normalization constant, havebeen set to a representative maximum (full-scale) field value of ‘0.25Ho’.

With specific reference to FIG. 8, the percentage error of the SET-RESETmagnetic output, ‘calibrated’ also to a (H/Ho) value of 0.25, is shown.Note this error varies significantly with both sensitive and cross-axisfield.

With particular reference to FIG. 9, the. percentage error of the scaledsensitive-axis output, ‘Hsen’ is shown. Note that error variation withcross-axis field has been greatly reduced, while the sensitive-axiserror has been redistributed towards the larger field values, ascompared to the previous figure.

With particular reference to FIG. 10, the percentage error of a ‘scaled’and ‘linearized’ sensitive-axis output is illustrated. Here the errorvariation;

Has been reduced by an order of magnitude, as compared to FIG. 9, forthe sensitive-axis field extremes; and

Diminishes rapidly towards zero as both the sensitive and cross-axisfields, magnitudes are reduced.

The actual error variation depends mainly on how accurately ‘dH’ can bedetermined, and to a lesser degree, ‘Ho’.

The following is an overview of a SET/RESET output normalizationtechnique in accordance with the present invention as implemented in aparticular embodiment.

With reference additionally now to FIG. 3, a SET/RESET measurement cycleas may be used in conjunction with an exemplary implementation of thetechniques of the present invention is shown, as utilized in theMapstar™ II compass available from Laser Technology, Inc, assignee ofthe present invention. In each 0.1-sec SET or RESET measurement block,the following analog/digital (A/D) measurements are made:

40 X,Y, and Z magnetic output samples, (3×40)=120 A/D samples; ‘N’=40);

-   -   b) 10 X,Y, and Z magnetic (+/−) gain measurements (3×2×10)=60        A/D samples; ‘M’=10); and    -   10 pitch/roll channel measurements (2×2×10=40 A/D measurements).

For economy of hardware, the X, Y, and Z MR, chips share both a singleSET/RESET and single OFFSET pulse generator. As a result of these sharedgenerators;

The SET/RESET cycles for all sensors are synchronous; and

The SET or RESET gain queries made for a given MR sensor show upsimultaneously on the output of all the sensors. Hence it should benoted that the waveform timing for one MR channel is representative forall others.

It should be noted that the sampling intervals and relative ratio ofoutput-to-gain samples utilized were not determined by the technique ofthe present invention itself, but were selected in light of the samplingrate required to reject 50/60 Hz magnetic interference and the speed ofthe particular microprocessor used in the hardware implementation of theMapstar™ II compass.

With reference additionally now to FIGS. 4 and 5, an expanded view ofthe SET portion of the measurement cycle shown in the preceding figureis illustrated in the former figure while one of the ten Gain/Pitch/Rollacquisition sequences made in the SET magnetic state is shown in thelatter. It should be noted that for the SET magnetic state, the firstsample of a X, Y, or Z channel gain measurement is positive with respectto baseline (which represents the ambient magnetic field), while thesecond is negative. The positive difference between these two gainreadings constitute a SET gain measurement.

With reference additionally now to FIG. 6, the converse is true for theRESET gain measurement illustrated. The first sample of an X, Y, or Zchannel gain measurement is negative with respect to baseline, while thesecond is positive, which results in-a negative RESET gain measurement.The plus/minus gain polarity for the SET/RESET gains is due both to howthe MR sensor 10 functions and the way the OFFSET strap 18 is energizedduring the measurements.

After block measurements for both the SET and RESET magnetic states aremade, a normalized output, in which both temperature and magneticcross-term effects are greatly reduced, can be calculated using thefollowing formula:

${Usen} \cong {\left( \frac{40}{10} \right)\frac{H}{\left( {2 \cdot {dH}} \right)}} \cong \frac{{\sum\limits_{1}^{40}\left( {{Set}\mspace{14mu}{Outputs}} \right)} - {\sum\limits_{1}^{40}\left( {{Reset}\mspace{14mu}{Outputs}} \right)}}{{\sum\limits_{1}^{10}\left( {{Set}\mspace{14mu}{Gains}} \right)} - {\sum\limits_{1}^{10}\left( {{Reset}\mspace{14mu}{Gains}} \right)}}$

The normalized output stream is updated as subsequent SET/RESET blocksbecome available.

With particular reference to pages 11, 12 and 15–19 of the PhilipsPublication (Appendix 1: The Magnetoresistive Effect) the “barber-pole”sensor equations can be developed. Equation (1) on page 15 defines theresistivity-field relationship as a function of the angle ‘Θ’ betweenthe internal magnetization vector ‘M’ and current vector ‘I’, with ‘ρ⊥’and ‘ρ∥’ being the resistivities respectively perpendicular and parallelto the magnetization vector ‘M’:ρ[Θ]=ρ_(⊥)+(ρ_(⊥)−ρ_(∥)) Cos²[Θ]

From FIG. 17 on page 15, Θ can be expressed as the sum of (2) angles,Θ=φ+θ, where ‘φ’ is the angle between vector M and the length-axis (+xaxis), and ‘θ’ is the angle between vector I and the length-axis. Notethat φ varies as vector M rotates under the influence of externalfields, while vector I (hence θ) is fixed for a given sensor type.

The quotient, ‘Q=(Δρ/ρ)=(ρ_(⊥)−ρ_(∥))/ρ⊥’, is defined as the anisotropicmagnetoresistive constant, and equation (1) can be modified to show thisconstant:ρ[Θ]=ρ_(⊥)(1+Q Cos²[Θ])

For the simple geometry for the resistor shown in FIG. 17, theresistance-field equation is:R[Θ]=(LW/t)ρ[Θ]=Ro(1+Q Cos²[Θ]),where thickness ‘t’ is much smaller than width ‘W’, which in turn issmaller than length ‘L’. The quantity ‘Ro=ρ_(⊥)(LW/t)’ is the equivalentresistance for a non-magnetoresistive, i.e., ‘ordinary’ resistor withsimilar geometry.

Following the discussions of pages 11, 12, and 17, the equationsdescribing a ‘barber-pole’ MR bridge are derived here. First, theresistance equation is scaled by a scale factor ‘α’ to account for theresistance reduction due to the shorting strips:R[Θ]=(αRo)(1+Q Cos²[Θ])

The ‘α Ro’ term has the same physical interpretation as the original Ro,and equals the resistance value for an ‘ordinary’ resistor with shortingstrips. Henceforth for brevity, the ‘α’ term will be dropped insubsequent equations.

It is now helpful to model the change in current direction caused by theaddition of ‘barber-pole’ shorting strips. To do this, the rotationangle θ for current vector ‘I’ must be set to ±π/4. Define ‘Rn’ to be amagnetoresistor whose value decreases with applied sensitive-axis field.For this case, θ=+π/4:Rn=Ro(1+Q Cos²[+π/4+φ])

‘Rp’ can be defined to be a magnetoresistor whose value increases withan applied sensitive-axis field. For this case, θ=−π/4:Rp=Ro(1+Q Cos²[−π/4+φ])

Expanding the Cos²[ ] terms in both the ‘Rn’ and ‘Rp’ equations revealsthe magnetic form-factor, ‘Cos[φ] Sin[φ]’, which only depends on appliedfields:Rn=Ro(1+Q/2−Q Cos[φ]Sin[φ])=Ro(1+Q/2−Q FH[φ])Rp=Ro(1+Q/2+Q Cos[φ]Sin[φ])=Ro(1+Q/2+Q FH[φ])

Re-distributing terms shows that the ‘barber-pole’]resistors can bemodeled by the sum and/or difference of two resistors:Rn=(Ro)(1+Q/2)−(Ro)(Q)FH[φ]=Ra[T]−Rb[T]FH[φ]=Rt[T]−Rm[φ,T], andRp=(Ro)(1+Q/2)+(Ro)(Q)FH[φ]=Ra[T]+Rb[T]FH[φ]=Rt[T]+Rm[φ,T], where

-   -   ‘Rm’ varies magnetically, and ‘Rt’ does not.

These resistance expressions then can be substituted into circuittopologies to derive equations reflecting variousbridge-sensor/amplifier combinations. For a constant-voltage bridge,Vout is simply the difference between the (+) and (−) voltage-dividerlegs of the bridge. Expressing Vout in terms of Rm and Rt:

$\begin{matrix}{{Vout} = {{Vbr} \cdot \frac{{Rp} - {Rn}}{{Rp} + {Rn}}}} \\{= {{Vbr} \cdot \frac{\left( {{Rt} + {Rm} - \left( {{Rt} - {Rm}} \right)} \right)}{\left( {{Rt} + {Rm} + \left( {{Rt} - {Rm}} \right)} \right)}}} \\{= {{Vbr} \cdot \frac{{Rm}\left\lbrack {\varphi,T} \right\rbrack}{{Rt}\lbrack T\rbrack}}} \\{= {{Vbr} \cdot \left( \frac{{Rb}\lbrack T\rbrack}{{Ra}\lbrack T\rbrack} \right) \cdot {{FH}\lbrack\varphi\rbrack}}}\end{matrix}$

Vout for a constant-current bridge is relatively easy to derive bynoting that sum (Rp+Rn) is a constant for any applied field, henceVbr=I(Rp+Rn)/2:

$\begin{matrix}{{Vout} = {{Vbr} \cdot \frac{{Rp} - {Rn}}{{Rp} + {Rn}}}} \\{= {\left( {I \cdot \frac{\left( {{Rp} + {Rn}} \right)}{2}} \right) \cdot \frac{\left( {2 \cdot {Rm}} \right)}{\left( {{Rp} + {Rn}} \right)}}} \\{= {I \cdot {{Rm}\left\lbrack {\varphi,T} \right\rbrack}}} \\{= {I \cdot {{Rb}\lbrack T\rbrack} \cdot {{FH}\lbrack\varphi\rbrack}}}\end{matrix}$

Note that the mathematical form for Vout in both MR bridge expressionsis a product of (2) functions, one being of temperature, and the otherbeing simply the magnetic form-factor of the ‘barber-pole’magnetoresistors. The temperature function derives from the temperaturedependencies of Ro and/or Q:Vout=(Vbr(2Q/(2+Q)))FH[φ] for the ‘V’ bridgeVout=(I Ro Q) FH[φ] for the ‘I’ bridge

The V_(OUT) expressions for both the constant-voltage andconstant-current bridges can be generalized again into the form:V _(OUT) =CO+Cl[T]FH[φ[Hx,Hy]],

where ‘CO’ is considered a constant, Cl[T] is some function oftemperature, and FH[φ[Hx,Hy]] is a reasonable approximation for the‘barber-pole’ MR resistor magnetic form-factor. For the cases of theconstant-voltage and constant-current bridges, ‘CO’ represents thezero-field bridge offset voltage, which is caused by resistancemismatches occurring during fabrication.

Other circuit topologies whose output can approximate the ‘CO+Cl FH’form can be used with the techniques of the present invention. TheMapstar™ II compass uses a constant-voltage MR bridge coupled with asingle operational-amplifier approximation for a true differentialbridge amplifier; the Rt/Rm form for the Vout equation looks like:

${Vout} = {\frac{Vbr}{2} + {{Vbr} \cdot \left\lbrack {\frac{1}{2} + \frac{2 \cdot {Rf}}{{Rt} + {2 \cdot {Rg}} - {{Rm}^{2}/{Rt}}}} \right\rbrack \cdot \frac{Rm}{Rt}}}$

Zeroing the tiny ‘Rm²/Rt’ term (because Rt>>Rm, hence Rt>>Rm²/Rt aswell) results in an approximation with the desired ‘CO+Cl FH’ form:

$\begin{matrix}{{Vout} \approx {\frac{Vbr}{2} + {{Vbr} \cdot \left\lbrack {\frac{1}{2} + \frac{2 \cdot {Rf}}{{Rt} + {2 \cdot {Rg}}}} \right\rbrack \cdot \left( \frac{{Rb}\lbrack T\rbrack}{{Ra}\lbrack T\rbrack} \right) \cdot {{FH}\lbrack\varphi\rbrack}}}} \\{\approx {{C0} + {{{C1}\lbrack T\rbrack} \cdot {{FH}\lbrack\varphi\rbrack}}}}\end{matrix}$

In order to complete the MR resistor/bridge equations, the magneticform-factor needs to be expressed in terms of both the sensitive (‘Hx’)and cross-axis (‘Hy’) fields instead of ‘φ’:FH[φ[Hx,Hy]]=NewFH[Hx,Hy]

This equation defines φ[Hx,Hy] in terms of a transcendental equation:Sin[φ]=Hy/(Ho+(Hx/Cos[φ]))

Because of the transcendental nature of φ[Hx,Hy], only approximationsfor FH[Hx,Hy], and ultimately, any type of ‘barber-pole’ MR sensor, canbe defined. This equation, however, can be solved numerically, whichallows for the comparison of various form-factor approximations as wellas numerical simulations of magnetoresistive sensor/amplifiertopologies.

The simplest approximation for FH[Hx,Hy] and the one used for the ‘Vout’expression given in the AN-205 application note reference, assumes that‘φ’ is small enough such that that Cos[φ]≅1, in both ‘FH[φ]’ andequation (6) therein states:FH[φ]=Cos[φ]Sin[φ]≅(1)Sin[φ], andSin[φ]≅Hx/(Ho+Hy/(1)),which leads toFH[Hx,Hy]≅Hx/(Hy+Ho), orFH[H,Hcal]≅H/(Hca+Hs) (as denominated in AN-205)‘Vout’ for the constant-voltage bridge becomes:Vout=(Vbr(2Q/(2+Q)))FH[φ]a(H/(Hca+Hs)),which assumesa≅(Vbr Q),which is a good approximation since if Q<<2, ‘Vout’ for theconstant-current bridge is:Vout=(I Ro Q)FH[φ]a(H/(Hca+Hs)), where a≅(I Ro Q)

Note that these equations derived for the constant voltage and currentMR bridge types matches the ‘Vout’ equation given in the AN-205application note reference.

Although the AN-205 ‘Vout’ approximation is suitable for mostapplications, experimental evidence to be shown hereinafter indicatesrefinements are needed to model the finer features a MR bridge sensor.Specifically, actual SET−RESET gain differences show quadratic-likevariations for BOTH the sensitive and cross-axis fields, but the AN-205approximation predicts NO variation with the sensitive-axis field:Vgain _(—) diff=Cl[T]*((4Ho dH)/(Ho ² −Hy ²))has no ‘Hx’, the sensitive-axis field term.

To derive a second approximation for FH[φ[Hx,Hy]], assume that thatCos[φ]≅1 only for equation (6), but not for FH[φ]. Given thatSin[φ[Hx,Hy]]≅Hx/(Ho+Hy),Cos[φ]=Sqrt[1−Sin²[φ]], andFH[φ]=Sin[φ]Cos[φ],the second ‘FH’ approximation equals:

${{FH}\left\lbrack {{Hx},{Hy},{Ho}} \right\rbrack} \cong {\left( \frac{Hx}{{Hy} + {Ho}} \right) \cdot {{Sqrt}\left\lbrack {1 - \left( \frac{Hx}{{Hy} + {Ho}} \right)^{2}} \right\rbrack}}$

Comparing both the AN-205 and second form-factor approximations via areference numerical solution indicates the second approximation reducesthe maximum approximation error (0.30% versus 0.026%) by about one orderof magnitude for a sensitive/cross-axis field range of ±0.6 Gauss withHo=8 Gauss.

To verify this second approximation, the SET gain-RESET gain (acomposite of several functions) using this form-factor was determined:Vgain _(—) diff≅Cl[T]Gdiff[Hx,Hy,Ho,dH], where functionGdiff[Hx,Hy,Ho,dH]≅Gset[Hx,Hy,Ho,dH]−Grset[Hx,Hy,Ho,dH], andGset[Hx,Hy,Ho,dH]≅FH[Hx+dH,Hy,+Ho]−FH[Hx−dH,Hy,+Ho]Grset[Hx,Hy,Ho,dH]≅FH[Hx+dH,Hy,−Ho]−FH,[Hx−dH,Hy,−Ho]

For comparison purposes, ‘Vgain_Diff’ needs to be normalized withrespect to amplifier and A/D scale factors; this is done by dividing‘Vgain_diff’ with its zero-field value:Normalized Vgain _(—) diff=Gdiff[H,Hca,Ho,dH]/Gdiff[0,0,Ho,dH]

As this normalized ‘Vgain_diff’ expression is fairly involved, it willnot be reproduced herein. A second-order series expansion, however, isuseful in illustrating how the normalized SET-RESET gain behaves whileHx and Hy vary individually:

For Hy=0 and dH→0, the series expansion indicates that the normalizedSET−RESET gain decreases quadratically with the sensitive-axis field,‘Hx’:Normalized Vgain _(—) diff≅1+(−2/3)Ho ²)⁻¹ Hx ²

ii) For Hx=0 and dH→0, the series expansion indicates that thenormalized SET−RESET gain increases quadratically with the cross-axisfield, ‘Hy’:Normalized Vgain _(—) diff≅1+(Ho ²)⁻¹ Hy ²

As both these behaviors are consistent with both experimental data andnumerical simulation, it is concluded the second approximation isadequate for further symbolic work.

To determine the amount of cross-term reduction afforded by thetechniques of the present invention, both ‘calibrated’ SET−RESETmagnetic outputs and sensitive-axis outputs are required. The SET-RESETmagnetic output equals:Vmag _(—) diff≡Vmag _(—) set−Vmag _(—) rset=Cl[T]Mdiff[H,Hca,Ho,dH],where functionMdiff[H,Hca,Ho,dH]=FH[H,Hca,+Ho]−FH[H,Hca,−Ho]

The scaled sensitive-axis output is defined as:

$\begin{matrix}{{{Scaled}\mspace{14mu}{Sensitive}\text{-}{Axis}\mspace{14mu}{Output}} = {Hsen}} \\{= {\left( {2*{dH}} \right) \cdot \frac{{Mdiff}\left\lbrack {H,\ldots\mspace{11mu},{dH}} \right\rbrack}{{Gdiff}\left\lbrack {H,\ldots\mspace{11mu},{dH}} \right\rbrack}}} \\{\approx H}\end{matrix}$

By analogy, both the ‘Vmag_diff’ and ‘Hsen’ output functions can bevisualized as having a “spine” running along the sensitive-axis, out ofwhich quadratic “ribs” emanate in the cross-axis direction:Vmag _(—) diff[H,Hca]≅SpineMdif[H]+RibMdif[H]Hca ², andHsen[H,Hca]≅SpineHsen[H]+RibHsen[H]Hca ²

The ‘Spine[ ]’ functions (ideally equal to ‘H’) describe the shape ofthe sensitive-axis spine, and the ‘Rib[ ]’ functions (ideally zero)describe how far the ribs extend above or below the spine.

To calibrate the SET−RESET magnetic output, a calibration by “excursion”is done by comparing values for ‘Vmag_diff’ at two equal-but-oppositesensitive-axis field excursions, with the cross-axis field equalingzero. The calibration constant-of-proportionality equals:KMDIFF≅(2Hcal)/(SpineMdif[+Hcal]−SpineMdif[−Hcal])

The calibrated SET−RESET magnetic output equals:Calibrated ‘Vmag _(—) dif’=KMDIFF×Vmag _(—) diff=KMDIFF(SpineMdif[H]+RibMdif[H]Hca ²)

A calibration by ‘excursion’ is also done for ‘Hsen’ to account for itssmall non-linearities at the maximum field excursion points. Thecalibration constant, ‘KMSENS’, is close to unity:KMSENS≡(2Hcal)/(SpineHsn[+Hcal]−SpineHsn[−Hcal])

The calibrated sensitive-axis output equals:Calibrated ‘Hsen’=KMSENS×‘Hsen’=KMSENS(SpineHsen[H]+RibHsen[H]Hca ²)

The desired cross-term reduction equation is found by taking thequotient of the calibrated “rib” functions. Using the symbolic formsprovided by the second magnetic form-factor approximation, themathematical form for the cross-term reduction looks like:

$\begin{matrix}{{{Xterm}\text{-}{{Reduction}\mspace{14mu}\lbrack H\rbrack}} \cong {\frac{KMDIFF}{KHSENS} \cdot \left( \frac{{{RibMdif}\lbrack H\rbrack} \cdot {Hca}^{2}}{{{RibHsen}\lbrack H\rbrack} \cdot {Hca}^{2}} \right)}} \\{\cong {{- {c0}} + \frac{c1}{\left( {{dH}^{2} + {{c2} \cdot H^{2}}} \right)}}}\end{matrix}$

From this equation form, it can be inferred that; As ‘H’ goes to zero,the cross-term reduction is limited by ‘dH’. Hence for small fields, thesmaller the ‘dH’, the greater the cross-term reduction.

For larger ‘H’, the reduction decreases as the inverse square of ‘H’, orin a roughly logarithmic manner, regardless of the value of ‘dH’.

Concerning sensitive-axis linearization, some insight can be gained byexamining a series approximation for the ‘spine’ of ‘Hsen’:SpineHsen[H]≅H+(Ho ⁻²)H ³

An inversion of this simple cubic series can be found by changing the‘H³’ term to ‘Hsen³’ then solving for ‘H’; this creates a linearizingfunction for ‘Hsen’:H _(Calibrated) ≅Hsen−(Ho ⁻²)·Hsen ³

More elaborate linearization schemes can be constructed both bynumerical and symbolic techniques.

With reference additionally now to FIGS. 11A and 11B, an experimentalvalidation of the SET-RESET gain normalization equations derived inaccordance with the technique of the present invention is shown. In thisexperiment (performed at room-temperature, T≈25° C.) a Honeywell HMCl002MR dual-axis sensor (1 MR bridge/axis) was rotated through 360 degrees(at. level) in the Earth's magnetic field while recording the SET-RESETmagnetic channel output along with both the SET and RESET gains for eachaxis. From this data, one would hypothesize that after calculating boththe sensitive and cross-axis outputs for each axis, one could determinefor each MR chip:

The cross (insensitive) axis direction;

The sensor constant, ‘Ho’;

The OFFSET strap field, ‘dH’; and

The sensor OFFSET strap current-to-field conversion constant,denominated ‘OFFSET Field’ by the Honeywell Datasheet, given that theOFFSET strap current, ‘Iofst’, equals 6 milliamperes.

It is generally known that the horizontal magnetic field for theexperiment location (i.e. Denver, Colo.) is substantially 0.2 Gauss.

The AN-205 application note indicates a nominal value for ‘Ho’ of 8.0Oersted, which is, equivalent to 8.0 Gauss in free-air.

The constant ‘dH’ is related to both the OFFSET strap current and theOFFSET current-to-field conversion constant, which is nominallyspecified by the Honeywell Datasheet at 51 milliamperes/Gauss. Theformula needed to calculate this conversion constant is:OFFSET Field=Iofst/dH

It should be noted that in this particular experiment, forty SET−RESETmagnetic measurements (‘N’=40) and ten SET and RESET gain measurements(‘M’=10) were taken per 0.1 second block, but this rate was determinedsolely by the interrupt overhead of the microprocessor in use in theparticular embodiment under test (e.g. a Mapstar™ II compass)

Assuming that the XY MR chips are orthogonal to each other, thesensitive-axis output of each chip should be proportional to thecross-axis output of the other as they are both rotated in the Earth'smagnetic field. Therefore plotting the cross-axis output of each sensoragainst the sensitive-axis output of its sister-chip should revealwhether the cross-axis direction is parallel (+slope) or anti-parallel(−slope) to the sister chip's sensitive-axis.

The sensitive-axis output for each sensor is found using the followingformula, which takes into account the unequal number (required to find acorrect ‘dH’) of output versus gain samples per sampling period:

${{Usen} \cong \frac{H}{\left( {2 \cdot {dH}} \right)}} = {\frac{10}{40} \cdot \frac{{\sum\limits_{1}^{40}\left( {{Set}\mspace{14mu}{Outputs}} \right)} - {\sum\limits_{1}^{40}\left( {{Reset}\mspace{14mu}{Outputs}} \right)}}{{\sum\limits_{1}^{10}\left( {{Set}\mspace{14mu}{Gains}} \right)} - {\sum\limits_{1}^{10}\left( {{Reset}\mspace{14mu}{Gains}} \right)}}}$

The cross-axis output for each sensor is negated in order to give apositive constant-of-proportionality, which will prove less confusingwhen determining cross-axis direction and finding ‘Ho’:

$\begin{matrix}{{Ucross} \cong \frac{Hca}{\left( {+ {Ho}} \right)}} \\{= {- \frac{Hca}{\left( {- {Ho}} \right)}}} \\{= {- \frac{{\sum\left( {{Set}\mspace{14mu}{Gains}} \right)} + {\sum\left( {{Reset}\mspace{14mu}{Gains}} \right)}}{{\sum\left( {{Set}\mspace{14mu}{Gains}} \right)} - {\sum\left( {{Reset}\mspace{14mu}{Gains}} \right)}}}}\end{matrix}$

With particular reference to FIG. 11A, the negative-slope of theX-channel cross-axis versus Y-channel sensitive-axis plot indicates thatthe X-channel cross-axis points in the (−Y) axis direction.

Conversely, with particular reference to FIG. 11B, the positive-slope ofthe Y-channel cross-axis versus X-channel sensitive-axis output plotindicates that the Y-channel cross-axis points in the (+X) axisdirection.

Knowing that for the Mapstar™ II compass:

The (+Y) chip sensitive-axis points to the LEFT of the forward-looking(+X) chip; and

The (+X) chip sensitive-axis points to the RIGHT of the forward-looking(+Y) chip;

The cross-axis direction for both chips is to the RIGHT of aforward-looking sensitive-axis. This was expected, as similar sisterchips must have identical cross-axis directions.

Again with particular reference to FIGS. 11A and 11B, knowledge thateach plot projection onto either a sensitive or cross-axis is associatedwith a 0.4 Gauss change (due to the rotation) allows for the calculationof both ‘dH’ and ‘Ho’:‘dH _(—) X’=(0.4 Gauss/X Sensitive-axis Excursion)/2=(0.4Gauss/1.591)≅0.126 Gauss‘Ho _(—) X’≅(0.4 Gauss/X Cross-axis Excursion)=(0.4 Gauss/0.04902)≅8.16Gauss‘dH _(—) Y’≅(0.4 Gauss/Y Sensitive-axis Excursion)/2=(0.4 Gauss/1.583)≅0.130 Gauss‘Ho _(—) Y’≅(0.4 Gauss/Y Cross-axis Excursion)=(0.4 Gauss/0.05166)≅7.74Gauss

The calculated ‘OFFSET Field’ values are:‘OFFSET Field_(—) X’=Iofst/dH _(—) X=(6 mA/0.126 Gauss)≅47.6 mA/Gauss‘OFFSET Field_(—) Y’=Iofst/dH _(—) X=(6 mA/0.130 Gauss)≅46.2 mA/Gauss

All the values calculated for ‘Ho’ and ‘OFFSET Field’ are consistentwith the AN-205 reference and Honeywell Datasheet.

With reference additionally now to FIGS. 12A and 12B, a furtherexperimental validation of the SET−RESET gain normalization equationsderived in accordance with the technique of the present invention isshown wherein the fine features of the magnetic form factor are checked.The experimental set up comprised:

Placing the HMC1002 MR dual-axis sensor in a small Helmholtz coil, withthe Y-axis MR bridge (chip) aligned with the coil axis;

Aligning the Helmholtz coil axis roughly to magnetic North;

Energizing the coil, and adjusting the MR sensor board position tomaximize the Y-axis signal; and

De-energizing the coil, and then adjusting the Helmholtz coil directionto minimize the X-axis signal.

With this alignment, most of the signal developed by the Y-axis chipwill be due to its sensitive axis. Conversely, most of the signaldeveloped by the X-axis chip will be due to its cross-axis field; whichis reported by the negated sensitive-axis output of the Y-chip.

After completing the sensor board alignment, the Helmholtz coil currentwas slowly swept to generate a Y-axis field of approximately −1.2 to+1.5 Gauss. During the sweep, the SET−RESET magnetic channel outputalong with both the SET and RESET gains for each axis were recorded atroom-temperature, T≈25° C.

As before, forty SET−RESET magnetic measurements (‘N’=40) and ten SETand RESET gain measurements (‘M’=10) were taken per 0.1 second block,but this rate was determined solely by the interrupt overhead of themicroprocessor in use in the particular embodiment under test (e.g. aMapstar™ II compass).

The Y-channel scaled sensitive-axis output was determined using thefollowing formula, assuming a default value of (6 mA×(1 Gauss/51mA))=0.12 Gauss for ‘dH’:

${{Hsen\_ Y} \approx H} = {\frac{10}{40} \cdot \left( {2 \cdot {dH}} \right) \cdot \mspace{169mu}\frac{{\sum\limits_{1}^{40}\left( {{Set}\mspace{14mu}{Outputs}} \right)} - {\sum\limits_{1}^{40}\left( {{Reset}\mspace{14mu}{Outputs}} \right)}}{{\sum\limits_{1}^{10}\left( {{Set}\mspace{14mu}{Gains}} \right)} - {\sum\limits_{1}^{10}\left( {{Reset}\mspace{14mu}{Gains}} \right)}}}$

With reference additionally now to FIG. 12A, a quadratic least squares(LSQ) fit was done to determine the X-axis SET−RESET gain variation withthe negative of the scaled Y-axis sensitive output, which reports theX-chip cross-axis field. After normalization by the LSQ ‘constant’coefficient, the normalized SET−RESET gain was plotted against thereported cross-axis field. This plot is illustrative of the fact thatSET−RESET gain increases with cross-axis field. Computationally, the LSQfit shows:Normalized S−R Gain≅(5120.6+78.01Hca ²)/5120.6(1+65.643⁻¹ Hca ²)

The measured versus calculated values for the inverse of the normalizedquadratic term are:65.643 versus (Ho²)⁻¹=(8²)⁻¹=64

With reference additionally now to FIG. 12B, a second quadratic leastsquares (LSQ) fit was done to determine the Y-axis SET−RESET gainvariation with the scaled Y-axis sensitive output. The normalizedSET−RESET gain was then plotted against the reported sensitive-axisfield. The resultant plot was also illustrative of the fact thatSET−RESET gain decreases with sensitive-axis field. Mathematically:Normalized S−R Gain≅(5406.5+161.25 Hca ²)/5406.5(1−33.53⁻¹ Hca ²)

The measured versus calculated values for the inverse of the normalizedquadratic term are:−33.53 versus (−2/3)(Ho²)⁻¹=(0.667)(8²)⁻¹=−42.67

What has been provided, therefore, is a measurement technique fornormalizing the sensitive-axis output of a magnetoresistive (MR) sensorwhich greatly reduces both temperature effects and magneticcontributions from the insensitive-axis cross-terms. As describedherein, the normalization techniques disclosed may be effectuated bydirect measurement with no prior knowledge of the sensor constants beingrequired and may be performed for a single sensor with multiple sensorsalso not being required in order to estimate the cross-axis fields foreach of the other sensors. The techniques disclosed provide an outputproportional to the insensitive-axis field as well as that of thesensitive-axis and, when combined with knowledge of ambient fieldstrengths, can be used to determine fundamental MR sensor constantswhich then allows for correction of higher-order sensor non-linearities.The techniques disclosed are particularly conducive to low power supplyavailability applications such as, for example, those encountered withbattery powered equipment.

The above description is based on devices utilizing a standard two orthree chip arrangement to provide output for the x-axis and the y-axis(and optionally the z-axis). Using the following described techniques,however, the inventor realized that the algorithms for calibrating a2-chip (1-chip per axis) compass apply directly to making and/oroperating a 1-chip compass (or other MR device). As will be describedbelow in detail, the synthesis of a cross axis can be used to generate asecond axis similar to that of a second chip, and significantly, a1-chip compass or MR device can be produced using the techniques of thepresent invention with 0.5 to 1 degree accuracy (e.g., at 0.2 Gausshorizontal field strength). Hence, a 1-chip compass or MR device hasaccuracy highly suitable for many lower accuracy applications, such asthe navigational compass of an automobile or the like.

To demonstrate the calibration and accuracy evaluation for both 1 and2-chip compass systems, a Mapstar™ II compass containing a HMC1002dual-axis sensor was mounted on a theodolite, then rotated 360 degrees(at level) in the Earth's magnetic field. At approximately 10 degreeincrements, reference angles provided by the theodolite were paired withmagnetic data from the HMC1002 sensor and written to a data file, for atotal of N=37 points-per-file. Afterwards, both sensitive and cross-axisoutputs were calculated for the individual X and Y chips containedwithin the HMC1002 sensor. This procedure was repeated for severalcompasses, and a representative run was selected for this example.

Mathematically, our calibration models either a sensitive or synthesizedcross-axis output by the vector DOT-PRODUCT of the applied magneticfield with a vector aligned with output axis direction:Magnetic Output=Hhorz*Sf*Cos[ag+ph]

where:

‘ag’ is the clockwise angle of rotation from magnetic north;

‘Hhorz’ is the horizontal magnetic-field magnitude;

‘Sf’ is an axis sensitivity factor; and

‘ph’ is a phase which sets axis direction.

An ideal 2-chip compass utilizes the sensitive-axis outputs of separateX and Y sensors whose axis phasing is 90 degrees apart or orthogonal:

Hx = Hhorz * SfSx * Cos[ag + 0], andHy = Hhorz * SfSy * Cos[ag + Pi/2]    = Hhorz * SfSy * Sin[ag + 0]Plotting these outputs against each other would result in an ellipse, asthe axes scale factors, ‘SfSx’ and ‘SfSy’ generally are not equal.

To model non-orthogonality, small phase adjustments are added to changethe axes directions:Hx=Hhorz*SfSx*Cos[ag+ph1] andHy=Hhorz*SfSy*Sin[ag+ph2],

where ‘ph1’ and ‘ph2’ are small and non-zero.

Plotting non-orthogonal outputs against each other results in a ‘tilted’ellipse, with the degree of tilt reflecting the amount of axisnon-orthogonality.

FIG. 13A shows the sensitive-axis XY outputs against each other for theexample HMC1002 dual-axis sensor, which represents a typical 2-chipcompass. The plot axes scales are nearly equal, as would be expected forsimilar sensors, and the small degree ellipse tilt indicates that the Xand Y chip axis directions are nearly orthogonal. Similar plots of thesensitive versus the synthesized cross-axis outputs for the INDIVIDUAL Xand Y chips, as seen in FIGS. 13B and 13C, yield similar ellipses. Thisillustrates not only that a 1-chip compass can be achieved according tothe techniques of the present invention, but a 1-chip compass can bealso calibrated using algorithms identical to those used for 2-chipcompasses.

The amount of tilt for the ellipses shown in FIGS. 13B and 13C, however,indicates a greater degree of axis non-orthogonality than seen fortypical 2-chip compasses. Although unexpected (and ultimately traced tomanufacturing process variations), this non-orthogonality is easilyaccounted for during calibration. Also, the plot scales for FIGS. 13Band 13C differ significantly from each other because the synthesizedcross-axis output is typically ‘Ho/2dH’ times smaller (about 33 timesfor the HMC1002 chips) than the sensitive-axis output. Hence, preferredembodiments of 1-chip compasses preferably will seek to minimize or atleast reduce or control ‘Ho’ (but, typically, at the expense oflinearity) to increase cross-axis output and overall sensitivity. As thecalibration techniques used for 1-chip compasses allow for the readydetermination of ‘dH’ and ‘Ho’, both of which are useful in correctingnon-linearities, the impact of a lower ‘Ho’ should not be significant.

Normally the algorithms used in compass field calibrations DO NOT relyon measured angles, and for this reason tend to be complex. Sincereference angles are available, however, an easy method of calibrationis to simply perform a Fourier analysis (using LSQ techniques) on themagnetic components outputs. This allows for both the determination ofaxis scale-factors and phases, which describe both 1 and 2-chipcompasses in the described model.

As the equations which describe the LSQ fit are readily described inmatrix notation, the experimental data is first organized into five(N×1) column vectors:

AG={ag1, ag2, . . . , agn} Reference angles

XS={xs1, xs2, . . . , xsn} X-chip sensitive-axis data

XC={xc1, xc2, . . . , xcn} X-chip cross-axis data

YS={ys1, ys2, . . . , ysn} Y-chip sensitive-axis data

YC={yc1, yc2, . . . , ycn} Y-chip cross-axis

Along with a constant vector, both cosine and sine vectors are generatedusing the reference angles, again all of dimension (N×1):

KV={1, 1, . . . , 1} A vector of ones

CV={Cos[ag1], Cos[ag2], . . . , Cos[agn]}Cosines

SV={Sin[ag1], Sin[ag2], . . . , Sin[agn]} Sines

The cosine and sine vectors are next multiplied by a scaling factorrepresenting the local magnetic field magnitude and are combined withthe constant vector into a (N×3) matrix denoted by ‘X’:X={KV|sf*CV|sf*SV},where ‘*’ denotes scalar multiplication. Note that scaling factor ‘sf’can be set to unity if only angles are needed.

Another matrix, labeled ‘MXT’, is prepared from ‘X’ using the‘Transpose’ and ‘Inverse’ matrix operations:

XT = Transpose [X] a (3 × N) matrix MM = Inverse [XT.X] a (3 × 3) matrixMXT = MM.XT a (3 × N) matrixNote here that ‘.’ henceforth denotes either a vector dot-product ormatrix multiplication.

Post-multiplying ‘MXT’ with a magnetic component vector generates a(3×1) Fourier coefficient vector, which represents the ‘best-fit’ linearcombination of offset, cosine, and sine vectors which make up themagnetic component vector:

Best-Fit MagneticComponent Vector=Mcos*CV+Msin*SV+Ofst,

where {Ofst Mcos Msin}=MXT.{mag.component vector}

Since the HMC1002 sensor contains two MR chips, four separate magneticcomponent outputs are available for compass construction. The Fouriercomponents for these axes are:

FXS={Oxs, Cxs, Sxs}=MXT.XS X-chip sensitive-axes coef's

FXC={Oxc, Cxc, Sxc}=MXT.XC X-chip cross-axis coef's

FYS={Oys, Cys, Sys}=MXT.YS Y-chip sensitive-axis coef's

FYC={Oyc, Cyc, Syc}=MXT.YC Y-chip cross-axis coef's.

Construction begins by re-arranging the Fourier coefficients of twoorthogonal (or nearly so) axes to form a (2×2) scaling matrix and a(2×1) offset vector, which are now defined for our three compass systemsof interest:

a) 2-chip (XY) compass: vectors FXS and FYS are used

-   -   CC2={Cxs Sxs Cys Sys}and OFST2={Oxs, Oys}

b) 1-chip (X) compass: vectors FXS and FXC are used

-   -   CCx={Cxs Sxs Cxc Sxc} and OFSTx={Oxs, Oxc}

c) 1-chip (Y) compass: vectors FYS and FYC are used

-   -   Ccy={Cys Sys Cyc Syc} and OPSTy={Oxs, Oxc}        A 4th compass system could be constructed from the synthesized X        and Y chip cross-axis components but is not done so for this        example.

For each compass under consideration, the scaling matrix andcorresponding offset vector form a linear system which describe theselected magnetic component outputs in terms of reference angles:{xval,yval}=CC·{Cos[ag], Sin[ag]}+OFST

Inverting this linear system gives ‘best-fit’ cosine/sine pairs in termsof magnetic components:{Cos[ag], Sin[ag]}=Inverse[CC]·{xval, yval}−Inverse[CC]·OFST

These ‘best-fit’ cos/sin pairs are then used to find angles via a4-quadrant ArcTan function:

Best-fit angle=ArcTan2 [{Cos[ag], Sin[ag]}

Finally, the angular differences between the best-fit angles and thereference angle list are computed to determine how well the selectedcompass system can be calibrated.

In this example calibration, FIGS. 14A, 14B, and 14C illustratecalibration error plots for representative 2-chip (XY), 1-chip (X), and1-chip (Y) compasses, respectively. As can be seen from the plots,accuracy is higher in the 2-chip device, i.e., about plus or minus 0.02to 0.05 degrees. Significantly, the 1-chip devices also providereasonable accuracy, i.e., about plus or minus 0.5 degrees, which isacceptable in many compass applications. Further statistical analysis onall the calibration runs was performed and showed that theRoot-Mean-Square (RMS) accuracy for the 2-chip compasses was about 0.06degrees while the RMS accuracy for the 1-chip compasses (i.e., theX-chip and the Y-chip of the HMC1002 device) was about 0.6 degrees.Hence, this experiment shows that the techniques of the presentinvention can be implemented to provide a 1-chip compass with accuracyof about 1 degree or less (i.e., 0.6 degrees and in some cases, higheraccuracy can be achieved).

Sensor constants for each individual MR chip can also be derived fromthe Fourier coefficients, providing that the scaling factor ‘sf’ was setto the local horizontal field magnitude during the calculation of ‘X’:dHx=(1/2)*Sqrt[Cxs^2+Sxs^2]X-chip ‘dH’Hox=Sqrt[Cxc^2+Sxc^2]X-chip

‘effective Ho’dHy=(1/2)*Sqrt[Cys^2+Sys^2]Y-chip ‘dH’Hoy=Sqrt[Cyc^2+Syc^2]Y-chip

‘effective Ho’

Given an experimentally determined horizontal ambient field ofHhorz=0.2198 Gauss, the ‘dH’ and effective ‘Ho’ values calculated forboth MR chips contained within the representative HMC1002 device were

-   -   {dHx, Hox}={0.1293, 7.968}, and    -   {dHy, Hoy}={0.1252, 7.789}, respectively.

These values compare favorably with a nominal calculated ‘dH’ value of0.122 Gauss, and a nominal quoted ‘Ho’ value of 8.0 Gauss, which isprovided by the AN-205 reference. Hence, the 1-chip compass provides arelatively accurate MR device that can readily be calibrated to furtherimprove compassing results.

While there have been described above the principles of the presentinvention in conjunction with specific circuit implementations andsensor technologies, it is to be clearly understood that the foregoingdescription is made only by way of example and not as a limitation tothe scope of the invention. Particularly, it is recognized that theteachings of the foregoing disclosure will suggest other modificationsto those persons skilled in the relevant art. Such modifications mayinvolve other features which are already known per se and which may beused instead of or in addition to features already described herein.

It is likely that 1-chip compasses will drift due to temperature morethan 2-chip compasses due to variations in ‘Ho’, but the amount of driftshould not significantly affect accuracy results of the 1-chipcompasses. Additionally, the temperature dependency of ‘dH’ can beprecisely set for the 1-chip compass using hardware to better controlthe 1-chip accuracy or outputs.

Although claims have been formulated in this application to particularcombinations of features, it should be understood that the scope of thedisclosure herein also includes any novel feature or any novelcombination of features disclosed either explicitly or implicitly or anygeneralization or modification thereof which would be apparent topersons skilled in the relevant art, whether or not such relates to thesame invention as presently claimed in any claim and, whether or not itmitigates any or all of the same technical problems as confronted by thepresent invention.

1. A method for operating one chip of a magnetic sensor having SET/RESETfield generating elements as a compass, comprising: collecting output ofa sensitive axis of the one chip of the magnetic sensor; determining across-axis output of the one chip of the magnetic sensor; and performinga compassing computation using the sensitive axis output and thecross-axis output as first and second sensitive axis inputs,respectively.
 2. The method of claim 1, wherein the determining of thecross-axis output comprises: sampling a number of SET gains of thesensor to produce a first sum; sampling a number of RESET gains of thesensor to produce a second sum; adding the first sum to the second sumto produce a first result; subtracting the second sum from the first sumto produce a second result; and dividing the first result by the secondresult.
 3. The method of claim 1, further comprising normalizing theoutput of the sensitive axis, comprising: sampling a number of SEToutputs of said sensor to produce a first sum; sampling a number ofRESET outputs of said sensor to produce a second sum; sampling a numberof SET gains of said sensor to produce a third sum; sampling a number ofRESET gains of said sensor to produce a fourth sum; subtracting saidsecond sum from said first sum to produce a first result; subtractingsaid fourth sum from said third-sum to produce a second result; anddividing said first result by said second result.
 4. The method of claim3, wherein the normalizing further comprises dividing the magnetic field(H) by the quantity (2*dH).
 5. The method of claim 3, wherein the numberof SET outputs, RESET outputs, SET gains and RESET gains is at leastone.
 6. The method of claim 1, wherein the compassing computation has anaccuracy in the range of about 0.5 degrees to about 1 degree.
 7. Themethod of claim 1, wherein the magnetic sensor further comprises OFFSETfield generating elements and the method further comprises normalizingthe output of the sensitive axis, the normalizing comprising: furnishinga pulse having a first direction to the SET/RESET field generatingelements to establish a SET magnetic state; sampling an output of themagnetic sensor to establish a SET magnetic output; providing a pulsehaving the first direction to the OFFSET field generating element;sampling the output of the magnetic sensor to establish a first sample;providing another pulse having a second direction opposite to the firstdirection to the OFFSET-field generating element; further sampling theoutput of the magnetic sensor to establish a second sample; andsubtracting the second sample from the first sample to establish a SETgain.
 8. The method of claim 7, wherein the act of furnishing a pulsehaving a first direction to the SET/RESET field generating elements iscarried out by applying a positive-going current pulse.
 9. The method ofclaim 7, wherein the act of providing a pulse having a first directionto the OFFSET field generating elements is carried out by applying apositive-going current pulse.
 10. The method of claim 7, wherein the actof providing another pulse having a second direction opposite to thefirst direction to the OFFSET field generating elements is carried outby applying a negative-going current pulse.
 11. The method of claim 7,wherein the acts of sampling the output of said magnetic sensor arecarried out by means of an A/D converter.
 12. The method of claim 7,wherein said acts of sampling an output of said magnetic sensor toestablish said SET magnetic output through subtracting said secondsample from said first sample to establish said SET gain are repeated atleast one additional time.
 13. The method of claim 7, furthercomprising: providing a pulse having a second direction opposite to saidfirst direction to said SET/RESET field generating element to establisha RESET magnetic state.
 14. The method of claim 13, wherein said acts ofproviding said pulses having a first and second direction to saidSET/RESET field generating elements to establish respective SET andRESET magnetic state are carried alternately.
 15. A circuit for use as al-chip compass, comprising: a magnetoresistive (MR) sensor having firstand second terminals, the MR sensor comprising a sensitive axis and across axis; SET/RESET field generating elements disposed at a firstlocation with respect to said MR sensor; OFFSET field generatingelements disposed at a second location with respect to said MR sensor soas to generate a field orthogonal to that generated by said SET/RESETfield generating elements; an amplifier coupled to said first and secondterminals of said MR sensor and having an output thereof; an A/Dconverter coupled to said output of said amplifier for producing acontrol signal; a SET/RESET pulse generator coupled to said SET/RESETfield generating elements; an OFFSET generator coupled to said OFFSETfield generating elements; and a control block receiving said controlsignal from said A/D converter and providing control output signals tosaid SET/RESET pulse generator and said OFFSET generator, the controlblock further performing compassing processes based on output for thesensitive axis and output determined for the cross-axis.
 16. The circuitof claim 15, wherein the control block determines the cross-axis outputby: sampling a number of SET gains of the MR sensor to produce a firstsum; sampling a number of RESET gains of the MR sensor to produce asecond sum; adding the first sum to the second sum to produce a firstresult; subtracting the second sum from the first sum to produce asecond result; and dividing the first result by the second result. 17.The circuit of claim 15, wherein the control block normalizes the outputof the sensitive axis, the normalizing comprising: sampling a number ofSET outputs of said sensor to produce a first sum; sampling a number ofRESET outputs of said sensor to produce a second sum; sampling a numberof SET gains of said sensor to produce a third sum; sampling a number ofRESET gains of said sensor to produce a fourth sum; subtracting saidsecond sum from said first sum to produce a first result; subtractingsaid fourth sum from said third sum to produce a second result; anddividing said first result by said second result, wherein thenormalizing further comprises dividing the magnetic field (H) by thequantity (2*dH).
 18. A one-chip compassing method, comprising: providingan MR sensor having SET/RESET field generating elements and a sensitiveaxis; collecting output of the MR sensor corresponding to the sensitiveaxis; normalizing the collected sensitive axis output to compensate fortemperature effects; calculating cross-axis output for the MR sensor;and performing compassing operations using the normalized sensitive axisoutput and the calculated cross-axis output of the MR sensor as firstand second axis inputs.
 19. The method of claim 18, wherein thecalculating of the cross-axis output comprises: sampling a number of SETgains of the sensor to produce a first sum; sampling a number of RESETgains of the sensor to produce a second sum; adding the first sum to thesecond sum to produce a first result; subtracting the second sum fromthe first sum to produce a second result; and dividing the first resultby the second result.
 20. The method of claim 18, wherein thenormalizing of the output of the sensitive axis, comprises: sampling anumber of SET outputs of said sensor to produce a first sum; sampling anumber of RESET outputs of said sensor to produce a second sum; samplinga number of SET gains of said sensor to produce a third sum; sampling anumber of RESET gains of said sensor to produce a fourth sum;subtracting said second sum from said first sum to produce a firstresult; subtracting said fourth sum from said third sum to produce asecond result; and dividing said first result by said second result,wherein the normalizing further comprises dividing the magnetic field(H) by the quantity (2*dH).